﻿using Mes.Domain.BoundedContext;
using Mes.Application.DTO.Inputs.Operations;
using Mes.Application.DTO.Results.Operations;

namespace Mes.Application.Services.Operations
{
    public interface IStdOperService
    {
        /// <summary>
        /// 添加标准工序
        /// </summary>
        /// <param name="stdOperInput"></param>
        /// <returns></returns>
        Task AddStandardOperationAsync(StdOperInput stdOperInput);

        /// <summary>
        /// 编辑标准工序
        /// </summary>
        /// <param name="stdOperUpdateInput"></param>
        /// <returns></returns>
        Task UpdateStandardOperationAsync(StdOperUpdateInput stdOperUpdateInput);

        /// <summary>
        /// 删除标准工序
        /// </summary>
        /// <param name="oper_ids"></param>
        /// <returns></returns>
        Task DeleteStandardOperationAsync(string[] oper_ids);

        /// <summary>
        /// 查询指定标准工序
        /// </summary>
        /// <param name="oper_id"></param>
        /// <returns>StdOperResult</returns>
        Task<StdOperResult> GetStandardOperationAsync(string oper_id);

        /// <summary>
        /// 分页查询标准工序
        /// </summary>
        /// <param name="stdOperPageInput"></param>
        /// <returns>PagedItemsData<StdOperResult></returns>
        Task<PagedItemsData<StdOperResult>> GetStandardOperationsAsync(StdOperPageInput stdOperPageInput);
    }
}
